Eecient Strictness Analysis of Haskell in Haskell Using Abstract Reduction

نویسنده

  • Sven Eric Panitz
چکیده

The extraction of strictness information marks an indispensable element of an eecient compilation of lazy functional languages like Haskell. Based on the method of abstract reduction we have developed an eecient strictness analyser for a core language of Haskell. It is completely written in Haskell and compares favourably with known implementations. The implementation is based on the G #-machine, which is an extension of the G-machine that has been adapted to the needs of abstract reduction.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Strictness Analysis and let-to-case Transformation using Template Haskell

Metaprogramming consists of writing programs that generate or manipulate other programs. Template Haskell is a very recent extension of Haskell, currently implemented in the Glasgow Haskell Compiler, giving support to metaprogramming at compile time. Our aim is to apply these facilities in order to statically analyse programs and transform them at compile time. In this paper we use Template Has...

متن کامل

Using Template Haskell for Abstract Interpretation

Metaprogramming consists of writing programs that generate or manipulate other programs. Template Haskell is a recent extension of Haskell, currently implemented in the Glasgow Haskell Compiler, giving support to metaprogramming at compile time. Our aim is to apply these facilities in order to statically analyse programs and transform them at compile time. In this paper we use Template Haskell ...

متن کامل

Fast Strictness

Strictness analysis (at least for at domains) is well understood. For a few years the main concern was eeciency, since the standard analysis was shown to be exponential in the worst case 9]. Thus lots of research evolved to nd eecient average-case algorithms. In Yale Haskell we have implemented a strictness analyzer that computes x-points via symbolic manipulation of boolean functions. This ext...

متن کامل

A Complete Proof of Nöcker’s Strictness Analysis

This paper proves correctness of Nöcker’s method of strictness analysis, implemented in the Clean compiler, which is an effective way for strictness analysis in lazy functional languages based on their operational semantics. We improve upon the work of Clark, Hankin and Hunt did on the correctness of the abstract reduction rules. Our method fully considers the cycle detection rules, which are t...

متن کامل

Efficient Strictness Analysis of Haskell

Strictness analysis has been a living field of investigation since Mycroft’s original work in 1980, and is getting increasingly significant with the still wider use of lazy functional programming languages. This paper focuses on an actual implementation of a strictness analyser for Haskell. The analyser uses abstract interpretation with chaotic fixpoint iteration. The demand-driven nature of th...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007